﻿#ifndef NOTIFY_H
#define NOTIFY_H

#include <QString>

class Notify
{
public:
    /**
     * @brief updateTask 任务更新，主要用于通知多个视图窗口
     * @param taskObj 任务ObjectName
     * @param cmdObj 指令ObjectName
     * @param scriptObj 脚本ObjectName
     */
    virtual void updateTask(const QString &taskObj, const QString &cmdObj, const QString &scriptObj) = 0;

    /**
     * @brief commandSelect 指令项被选中的通知，主要针对视图通知
     * @param cmdObj 指令的ObjectName
     */
    virtual void commandSelect(const QString &cmdObj) = 0;
//new
    /**
     * @brief updateTaskStyle
     * @param sStyleName
     * 不强制要求每个继承的类都重写这个接口，主要用于显示颜色样式的窗口
     */
    virtual void updateStyle(const QString& sStyleName){}

    /**
     * @brief removeTask
     * @param sTaskObj
     */
    virtual void removeTask(const QString& sTaskObj) = 0;
};

#endif // NOTIFY_H
